/**
 * 
 */
package com.shine.icis.dao;

import com.shine.cotrun.sql.QueryParameters;
import com.shine.cotrun.web.comm.ListPage;
import com.shine.icis.dao.IBaseHibernateDAO;
import com.shine.icis.dto.RptA13;
import com.shine.icis.dto.RptA13.RptA13Id;
import com.shine.icis.hbean.RptA13Bak;

/**
 * @author zhangxr
 * 
 */
public interface IRptA13DAO extends IBaseHibernateDAO {
	/**
	 * 分页查询A13列表
	 * @author zhangxr
	 * */
	public ListPage<RptA13> findListPage(QueryParameters qp);
	
	/**
	 * 分页查询A13备份日志
	 * @param qp
	 * @return
	 */
	public ListPage<RptA13Bak> findBakListPage(QueryParameters qp);
	
	/**
	 * 保存A13的信息
	 * @author zhangxr
	 * @param rptA13 A13实体信息
	 * */
	public void save(RptA13 rptA13);

	/**
	 * A13信息的修改
	 * 
	 * @author zhangxr
	 * @param oldId
	 *            原A13表的主键
	 * @param rptA13
	 *            A13实体
	 */
	public void update(RptA13Id oldId, RptA13 rptA13);
	
	/**
	 * 根据主键，删除A13信息
	 * @author zhangxr
	 * @param id A13表主键
	 * */
	public void delete(RptA13Id id);
	
	/**
	 * 判断该主键是否已经存在，若存在，返回false，否则返回true
	 * @author zhangxr
	 * @param id A13表主键
	 * */
	public boolean checkId(RptA13Id id);
	/**
	 * 新增A13的备份信息
	 * @author zhangxr
	 * @param rptA14Bak
	 * */
	public void saveBak(RptA13Bak rptA14Bak);
	
	/**
	 * 根据A13主键，获得A13相关信息
	 * @author zhangxr
	 * */
	@SuppressWarnings("unchecked")
	public RptA13 findRptA13ById(RptA13Id id);
}
